<?php

namespace app\system\controller;

use think\facade\Db;

class Role extends Base
{

    /**
     * 获取角色信息列表
     */
    public function TableDataInfo()
    {
        $sql = "SELECT DISTINCT
	r.role_id AS roleId,
	r.role_name AS roleName,
	r.role_key AS roleKey,
	r.role_sort AS roleSort,
	r.data_scope AS dataScope,
	r.menu_check_strictly AS menuCheckStrictly,
	r.dept_check_strictly AS deptCheckStrictly,
	r.STATUS,
	r.del_flag AS delFlag,
	r.create_time AS createTime,
	r.remark 
FROM
	sys_role r
	LEFT JOIN sys_user_role ur ON ur.role_id = r.role_id
	LEFT JOIN sys_user u ON u.user_id = ur.user_id
	LEFT JOIN sys_dept d ON u.dept_id = d.dept_id 
WHERE
	r.del_flag = '0' 
ORDER BY
	r.role_sort";
        $dataList = Db::query($sql); //[ 'uid'=> $uid]

        $returnData = [
            'code'=> 200,
            'msg'=> '操作成功',
            'rows'=> $dataList,
            'total'=> count($dataList)
        ];
        return json($returnData);

    }

    /**
     * 导出角色信息列表
     */
    public function export()
    {

    }

    /**
     * 根据角色编号获取详细信息
     */
    public function getInfo()
    {

    }

    /**
     * 新增角色
     */
    public function add()
    {

    }

    /**
     * 修改角色
     */
    public function edit()
    {

    }

    /**
     * 修改保存数据权限
     */
    public function dataScape()
    {

    }

    /**
     * 状态修改
     */
    public function changeStatus()
    {

    }

    /**
     * 删除角色
     */
    public function remove()
    {

    }

    /**
     * 获取角色选择框列表
     */
    public function optionselect()
    {

    }

    /**
     * 查询已分配用户角色列表
     */
    public function allocatedList()
    {

    }

    /**
     * 查询未分配用户角色列表
     */
    public function unallocatedList()
    {

    }

    /**
     * 取消授权用户
     */
    public function cancelAuthUser()
    {

    }

    /**
     * 批量取消授权用户
     */
    public function cancelAuthUserAll()
    {

    }

    /**
     * 批量选择用户授权
     */
    public function selectAuthUserAll()
    {

    }

    /**
     * 获取对应角色部门树列表
     */
    public function roleDeptTreeselect()
    {

    }
}